浅谈SpringMVC五大组件以及对执行原理的分析

您所在的位置:网站首页 spring包括哪些功能 springmvc包括哪些功能 浅谈SpringMVC五大组件以及对执行原理的分析

浅谈SpringMVC五大组件以及对执行原理的分析

2024-07-13 09:55:25| 来源: 网络整理| 查看: 265

目录

SpringMVC 五大组件1、DispatcherServlet (前端(核心)控制器)2、HandlerMapping (处理器映射器)3、Controller (处理请求的控制器)4、ModelAndView (封装数据和视图信息)5、ViewResolver (视图解析器)SpringMVC执行原理总结

Spring MVC是包含在spring中的一个基于MVC设计思想的Web应用程序框架,目的是简化开发工作,提高开发效率。

在这里插入图片描述在这里插入图片描述

 优点

 和Spring框架无缝集成,能直接使用Spring的IoC容器、AOP支持;

 提供了多种将请求URL映射到控制器的机制;并支持参数的类型转换,自动装载,校验等功能;

 具有强大的扩展性,可根据需要方便的扩展框架的功能。

SpringMVC 五大组件DispatcherServlet 负责分发请求(前端(核心)控制器)HandlerMapping 负责根据请求 找到对应的控制器(处理器映射器)Controller 处理请求的控制器ModelAndView 封装数据信息以及视图信息ViewResolver 通过处理找到对应的页面(视图解析器)1、DispatcherServlet (前端(核心)控制器)

DispatcherServlet 是SpringMVC 最核心的一个控件。它是前端核心控制器,在web.xml中进行相关的配置。它可以将发送过来的请求进行匹配操作,再进行拦截。将拦截下来的所有请求根据对应的规则发送到对应的Controller进行处理。它是前端控制器设计模式的实现,能够提供Spring Web MVC的集中节点,而且负责职责的分派,而且与Spring IoC容器无缝集成。

配置DispatcherServlet :

代码语言:javascript复制 springMvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:springmvc.xml 1 springMvc *.form

DispatcherServlet配置在web.xml文件中。init-param为Servlet启动所需参数。DispatcherServlet会读取初始shucontextConfigLocation参数里面的值从而获取springmvc的配置位置自启动容器

2、HandlerMapping (处理器映射器)

HandlerMapping 是处理器映射,它的关键作用是将请求进行派发,负责请将求与控制器建立互相对应的关系。它最终由 DispatcherServlet 调用,DispatcherServlet 会从容器中取出所有 HandlerMapping 实例并遍历,让 HandlerMapping 实例根据自己实现类的方式去尝试查找 Handler。它标明了路径与Controller的对应关系,不同的路径访问不同的Controller

配置HandlerMapping :

代码语言:javascript复制 helloController 3、Controller (处理请求的控制器)

处理请求的控制器,负责处理由DispatcherServlet 分发的请求,把用户请求的数据发送到业务处理层处理之后封装成一个Model ,然后把该Model 返回给对应的View 进行展示。它实际上就是用来处理业务逻辑的Java类。

配置Controller类 :

代码语言:javascript复制@Controller public class DataController { @RequestMapping("getData") public ModeAndView hello(String Id) { System.out.println("hello"); return new ModeAndView("hello") } }4、ModelAndView (封装数据和视图信息)

ModelAndView 是进行封装数据信息和视图信息的模型。使用ModelAndView类用来存储处理完后的结果数据。ModelAndView中的Model代表模型,View代表视图,很好地解释了该类的作用。业务处理器调用模型层处理完用户请求后,把结果数据存储在该类的model属性中,把要返回的视图信息存储在该类的view属性中,然后返回给SpringMVC框架。框架通过调用配置文件中定义的视图解析器,对该对象进行解析,最后把结果数据显示在指定的页面上。

5、ViewResolver (视图解析器)

视图解析器ViewResolver 的主要作用是把一个逻辑上的视图名称解析为一个视图。

配置ViewResolver :

代码语言:javascript复制 SpringMVC执行原理在这里插入图片描述在这里插入图片描述发起请求到前端控制器DispatcherServlet前端控制器调用处理器映射器HandlerMapping查找Handler处理器映射器向前端控制器返回找到的Handler前端控制器调用处理器适配器HandlerAdapter执行Handler处理器适配器去执行HandlerHandler执行完成给处理器适配器返回ModelAndView处理器适配器向前端控制器返回ModelAndView前端控制器请求视图解析器ViewResolver去进行视图解析视图解析器向前端控制器返回视图View前端控制器进行视图渲染向用户响应结果总结

DispatcherServlet(前端控制器)接收来自客户端的URL请求。请求分发器借助处理器映射器(HandlerMapping)来查找对应的处理器Handler(控制器),分发本次请求。请求分发器利用处理器适配器(HandlerAdapter)来执行对应的处理器(控制器)。处理器调用方法处理本次请求,返回模型视图对象(ModelAndView)。请求分发器借助视图解析器(ViewResolver)解析模型视图,得到对应的视图(View)。请求分发器调用视图中的方法,同时将数据模型交给视图对象,完成给客户端的应答。

2021 年 12 月 6 日 百思不得小赵。 —— 新时代的农民工 🙊 —— 换一种思维逻辑去看待这个世界 👀



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭